import csv

def create_csv_for_capacity(capacity, data):
    filename = f"capacity{capacity}下四种算法在不同的items数下的Time表现.csv"
    headers = ['Items数量', '暴力算法(ms)', '回溯算法(ms)', '动态规划(ms)', '贪心算法(ms)']
    
    with open(filename, 'w', newline='', encoding='utf-8') as f:
        writer = csv.writer(f)
        writer.writerow(headers)
        writer.writerows(data)

# 容量10000的数据
data_10000 = [
    [1000, 'timeout', 'timeout', 48.61, 0.75],
    [2000, 'timeout', 'timeout', 101.58, 3.02],
    [3000, 'timeout', 'timeout', 156.25, 6.89],
    [4000, 'timeout', 'timeout', 197.50, 13.72],
    [5000, 'timeout', 'timeout', 244.15, 27.29],
    [6000, 'timeout', 'timeout', 299.71, 38.33],
    [7000, 'timeout', 'timeout', 349.49, 55.70],
    [8000, 'timeout', 'timeout', 401.33, 75.62],
    [9000, 'timeout', 'timeout', 457.81, 101.43],
    [10000, 'timeout', 'timeout', 487.40, 128.23],
    [20000, 'timeout', 'timeout', 977.46, 600.24],
    [40000, 'timeout', 'timeout', 2003.76, 2628.05],
    [80000, 'timeout', 'timeout', 4191.49, 10796.45],
    [160000, 'timeout', 'timeout', 17309.20, 43492.13],
    [320000, 'timeout', 'timeout', 'timeout', 'timeout']
]

# 容量100000的数据
data_100000 = [
    [1000, 'timeout', 'timeout', 440.07, 1.26],
    [2000, 'timeout', 'timeout', 872.04, 2.79],
    [3000, 'timeout', 'timeout', 1384.08, 6.98],
    [4000, 'timeout', 'timeout', 1728.17, 15.01],
    [5000, 'timeout', 'timeout', 2208.54, 23.92],
    [6000, 'timeout', 'timeout', 2670.42, 40.01],
    [7000, 'timeout', 'timeout', 3088.26, 57.95],
    [8000, 'timeout', 'timeout', 3538.36, 76.27],
    [9000, 'timeout', 'timeout', 4125.50, 102.44],
    [10000, 'timeout', 'timeout', 4688.11, 134.26],
    [20000, 'timeout', 'timeout', 'timeout', 614.35],
    [40000, 'timeout', 'timeout', 'timeout', 2643.25],
    [80000, 'timeout', 'timeout', 'timeout', 11012.36],
    [160000, 'timeout', 'timeout', 'timeout', 43533.02],
]

# 容量1000000的数据
data_1000000 = [
    [1000, 'timeout', 'timeout', 5094.88, 1.21],
    [2000, 'timeout', 'timeout', 11893.64, 3.20],
    [3000, 'timeout', 'timeout', 19087.76, 6.86],
    [4000, 'timeout', 'timeout', 25921.34, 13.49],
    [5000, 'timeout', 'timeout', 40361.42, 24.76],
    [6000, 'timeout', 'timeout', 'timeout', 37.71],
    [7000, 'timeout', 'timeout', 'timeout', 56.16],
    [8000, 'timeout', 'timeout', 'timeout', 78.47],
    [9000, 'timeout', 'timeout', 'timeout', 102.47],
    [10000, 'timeout', 'timeout', 'timeout', 128.53],
    [20000, 'timeout', 'timeout', 'timeout', 605.59],
    [40000, 'timeout', 'timeout', 'timeout', 2640.40],
    [80000, 'timeout', 'timeout', 'timeout', 10798.10],
    [160000, 'timeout', 'timeout', 'timeout', 44278.51],
]

create_csv_for_capacity(10000, data_10000)
create_csv_for_capacity(100000, data_100000)
create_csv_for_capacity(1000000, data_1000000)